package com.ztsoft.user.service.project;

import com.baomidou.mybatisplus.extension.service.IService;
import com.ztsoft.user.pojo.entity.project.Project;
import com.ztsoft.user.utils.Result;

import java.util.Date;
import java.util.List;

public interface ProjectService extends IService<Project> {

    Result<Object> updateProject(Project project);

    Result<Object> addProject(Project project);

    Result<Object> deleteProject(String id);

    Result<Object> getProject(Integer currentPage, Integer pageSize, String infoNumber, String projectName);

    Result<Object> getUserAndProject(String projectId, Integer currentPage, Integer pageSize, String userAccount, String userName, String roleName, String region);

    Result<Object> getExistUserAndProject(String projectId, Integer currentPage, Integer pageSize);

    Result<Object> updateUserAndProject(String projectId, Integer type, List<String> userIds);

    Result<Object> getChildAgencies(Integer currentPage, Integer pageSize, String userAccount, String userName, String region);

    Result<Object> getUserAndManage(String manageId, Integer currentPage, Integer pageSize, String userAccount, String userName, String roleName, String region);

    Result<Object> getExistUserAndManage(String manageId, Integer currentPage, Integer pageSize, String userName, String region);

    Result<Object> updateUserAndManage(String manageId, Integer type, List<String> userIds);

    Result<Object> queryUserAndDemandUnit(Integer currentPage, Integer pageSize, String userName, String demandUnitName, String region, Date userCreateTime, Date demandUnitCreateTime);

    Result<Object> updateUserAndQuote(String userId, Integer type, List<String> quoteIds);
}